{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Матрица:\n",
      "[[ 1  2  0]\n",
      " [ 1  3  4]\n",
      " [ 2  3 11]]\n",
      "Определитель:\n",
      "15\n",
      "Матрица:\n",
      "[[ 1  2  0]\n",
      " [ 1  3  4]\n",
      " [ 2  3 11]]\n",
      "Транспонированная матрица:\n",
      "[[ 1  1  2]\n",
      " [ 2  3  3]\n",
      " [ 0  4 11]]\n",
      "Определитель:\n",
      "15\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "A = np.array([[1, 2, 0], [1, 3, 4], [2, 3, 11]])\n",
    "print(f'Матрица:\\n{A}')\n",
    "print(f'Определитель:\\n{np.linalg.det(A):.0f}')\n",
    "\n",
    "\n",
    "print(f'Транспонированная матрица:\\n{A.T}')\n",
    "print(f'Определитель:\\n{np.linalg.det(A.T):.0f}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "5.329070518200756e-13"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "b = np.array([[10, 20, 30], [40, 50, 60], [7, 8, 9]])\n",
    "np.linalg.det(b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'y')"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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gUBAL730krZv366f/exnevHFF/XII4/Y3VqPeuONN/TAAw9owYIFKikp0bhx43TjjTequrra7tZ61cqVKzVv3jytXbtWS5cuVWtrqz7/+c+roaHB7tZss27dOr300ksaO3as3a30upMnT2ratGmKjY3Vu+++qx07duhf//Vf1a9fP7tb61VPP/20Fi9erF/84hfauXOnnn76aT3zzDN6/vnn7W6tRzU0NGjcuHF64YUXzvnxZ555Rj//+c/14osv6uOPP1ZSUpJuvPFGNTU1de03uuzbvnBZ/vSnP1kjRoywtm/fbkmyNm7caHdLtnvmmWeswsJCu9voUZMnT7bmzZvX8XZ7e7uVm5trLVy40Mau7FddXW1JslauXGl3K7aor6+3hg0bZi1dutSaPn26df/999vdUq966KGHrGuvvdbuNmz3xS9+0brrrrvOet9XvvIV6/bbb7epo94nyXrzzTc73g4EAtaAAQOsn/70px3vq62ttbxer/W73/2uS782Kz42qqqq0j333KNXX31ViYmJdrfTZ9TV1Sk9Pd3uNnpMS0uLNmzYoNmzZ3e8z+12a/bs2VqzZo2Nndmvrq5OkqL6n/+FzJs3T1/84hfP+nfDSd5++21NmjRJt956q7KysjRhwgT98pe/tLutXjd16lQtX75ce/bskSRt3rxZH374ob7whS/Y3Jl9Dhw4oKNHj57134bP59OUKVO6/LoZESc3RyPLsnTnnXfqm9/8piZNmqSDBw/a3VKfUFpaqueff17PPvus3a30mGPHjqm9vV3Z2dlnvT87O1u7du2yqSv7BQIBzZ8/X9OmTdPo0aPtbqfXvf766yopKdG6devsbsU2+/fv1+LFi/XAAw/okUce0bp163TfffcpLi5Oc+bMsbu9XvPwww/L7/drxIgR8ng8am9v15NPPqnbb7/d7tZsc/ToUUk65+tm6GOdxYpPN3v44YflcrkuWLt27dLzzz+v+vp6/eAHP7C75R7R2Z/DmSoqKnTTTTfp1ltv1T333GNT57DLvHnztG3bNr3++ut2t9LrysvLdf/99+u3v/2t4uPj7W7HNoFAQBMnTtRTTz2lCRMm6Bvf+Ibuuecevfjii3a31qv+8z//U7/97W/12muvqaSkRK+88oqeffZZvfLKK3a3FhVY8elm3/ve93TnnXde8HOKior03nvvac2aNZ+5d2TSpEm6/fbbI/5f8M7+HEIqKys1c+ZMTZ06VUuWLOnh7uyVmZkpj8ejqqqqs95fVVXl2Et37733Xr3zzjtatWrVZ+7jc4INGzaourpaEydO7Hhfe3u7Vq1apV/84hdqbm6Wx+OxscPekZOTo5EjR571viuvvFL/9V//ZVNH9njwwQf18MMP67bbbpMkjRkzRmVlZVq4cKGjVr7OFHptrKqqUk5OTsf7q6qqNH78+C79WgSfbta/f3/179//op/385//XE888UTH25WVlbrxxhv1xhtvaMqUKT3ZYq/o7M9BMis9M2fOVHFxsV5++WW53dG9EBkXF6fi4mItX75ct9xyiyTzN93ly5fr3nvvtbe5XmZZlr7zne/ozTff1Pvvv6/CwkK7W7LFrFmztHXr1rPeN3fuXI0YMUIPPfSQI0KPJE2bNu0zxxns2bNHBQUFNnVkj8bGxs+8Dno8HgUCAZs6sl9hYaEGDBig5cuXdwQdv9+vjz/+WN/61re69GsRfGySn59/1tvJycmSpCFDhjjqb7wVFRWaMWOGCgoK9Oyzz6qmpqbjY9G8+vHAAw9ozpw5mjRpkiZPnqxFixapoaFBc+fOtbu1XjVv3jy99tpr+sMf/qCUlJSOZ/U+n08JCQk2d9d7UlJSPjPXlJSUpIyMDEfNO333u9/V1KlT9dRTT+lrX/uaPvnkEy1ZsiTqV4E/7Utf+pKefPJJ5efna9SoUdq4caOee+453XXXXXa31qNOnTql0tLSjrcPHDigTZs2KT09Xfn5+Zo/f76eeOIJDRs2TIWFhXr00UeVm5vb8RfITuuejWe4XAcOHHDkdvaXX37ZknTOinbPP/+8lZ+fb8XFxVmTJ0+21q5da3dLve58/+xffvllu1uznRO3s1uWZf3xj3+0Ro8ebXm9XmvEiBHWkiVL7G6p1/n9fuv++++38vPzrfj4eKuoqMj64Q9/aDU3N9vdWo9asWLFOV8P5syZY1mW2dL+6KOPWtnZ2ZbX67VmzZpl7d69u8u/j8uyovwoSAAAgKDoHqYAAAA4A8EHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHAAA4BsEHQMSqqanRgAED9NRTT3W8b/Xq1YqLi9Py5ctt7AxAX8VdXQAi2p/+9CfdcsstWr16tYYPH67x48fry1/+sp577jm7WwPQBxF8AES8efPmadmyZZo0aZK2bt2qdevWyev12t0WgD6I4AMg4p0+fVqjR49WeXm5NmzYoDFjxtjdEoA+ihkfABFv3759qqysVCAQ0MGDB+1uB0AfxooPgIjW0tKiyZMna/z48Ro+fLgWLVqkrVu3Kisry+7WAPRBBB8AEe3BBx/U73//e23evFnJycmaPn26fD6f3nnnHbtbA9AH8agLQMR6//33tWjRIr366qtKTU2V2+3Wq6++qg8++ECLFy+2uz0AfRArPgAAwDFY8QEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI5B8AEAAI7x/wMhD64nFCrXsAAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import math\n",
    "x = np.linspace(-5, 10, 21)\n",
    "y = 4 * x - 4\n",
    "y2 = (-1/4) * x + 9/2\n",
    "plt.ylim(-2,8)\n",
    "plt.xlim(-5,10)\n",
    "\n",
    "plt.plot(x,y)\n",
    "plt.plot(x,y2)\n",
    "\n",
    "plt.xlabel(\"x\")\n",
    "plt.ylabel(\"y\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([1. , 0.5])"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "A = np.array([[3, 2], [3, -4]])\n",
    "B = np.array([4, 1])\n",
    "np.linalg.solve(A, B)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.22222222  0.11111111]\n",
      " [ 0.16666667 -0.16666667]]\n",
      "det = -17.999999999999996\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "array([1. , 0.5])"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "A1 = np.linalg.inv(A)\n",
    "print(A1)\n",
    "print(np.trace(A1))\n",
    "print(\"det =\", np.linalg.det(A))\n",
    "np.dot(A1, B)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
